package com.wkg.lotterysystem.service;

import com.wkg.lotterysystem.controller.param.CreateActivityParam;
import com.wkg.lotterysystem.controller.param.PageParam;
import com.wkg.lotterysystem.service.dto.ActivityDTO;
import com.wkg.lotterysystem.service.dto.ActivityDetailDTO;
import com.wkg.lotterysystem.service.dto.CreateActivityDTO;
import com.wkg.lotterysystem.service.dto.PageListDTO;

public interface ActivityService {

    /**
     * 活动创建
     *
     * @param param
     * @return
     */
    CreateActivityDTO createActivity(CreateActivityParam param);


    /**
     * 翻页查询活动（摘要）列表
     *
     * @param param
     * @return
     */
    PageListDTO<ActivityDTO> findActivtyList(PageParam param);


    /**
     * 查询活动详细信息：奖品列表，⼈员列表
     *
     * @param activityId
     * @return
     */
    ActivityDetailDTO getActivityDetail(Integer activityId);

    /**
     * 缓存活动详细信息（先读取表数据再缓存）
     *
     * @param activityId
     */
    void cacheActivity(Integer activityId);
}
